{
 "metadata": {
  "name": "",
  "signature": "sha256:c54b47f43adadf2e30cd0ce03f2be07032fdc6e976b088da9d04595be3803618"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import numpy as np\n",
      "from matplotlib import pyplot as plt\n",
      "%matplotlib inline"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 1
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "x = np.load(\"trainData.npy\")\n",
      "y = np.load(\"label.npy\")"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 2
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "x = np.concatenate((np.ones((x.shape[0], 1)), x), axis=1)\n",
      "x.shape"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 3,
       "text": [
        "(3600, 10)"
       ]
      }
     ],
     "prompt_number": 3
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "w = np.zeros(len(x[0]))\n",
      "l_rate = 10\n",
      "epochs = 1000\n",
      "s_grad = np.zeros([len(x[0])])\n",
      "x_t = x.transpose()"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 4
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "losses = []\n",
      "n = len(x)\n",
      "for i in range(epochs):\n",
      "    temp = np.dot(x, w)\n",
      "    err = temp - y\n",
      "    loss = err**2\n",
      "    losses.append(sum(loss)/len(loss))\n",
      "    grad = np.dot(x_t, err)\n",
      "    s_grad += grad**2\n",
      "    adagrad= grad/np.sqrt(s_grad)\n",
      "    w = w-l_rate*adagrad"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 5
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "plt.plot(losses[10:])\n",
      "plt.show()"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "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\n",
       "text": [
        "<matplotlib.figure.Figure at 0x7f5d023701d0>"
       ]
      }
     ],
     "prompt_number": 6
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "np.save(\"model.npy\", w)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 7
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [],
     "language": "python",
     "metadata": {},
     "outputs": []
    }
   ],
   "metadata": {}
  }
 ]
}